package com.alibaba.citrus.ots.application.report.ability.repository;

import com.alibaba.cz.base.tool.page.PageResult;
import com.epoch.app.bcorder.model.dto.MonthSalesPlanProgressReportSDO;
import com.epoch.app.bcorder.model.dto.OrgMonthPlanQuantitySDO;
import com.epoch.app.bcorder.sales_plan.monthlyplanofccommerce.model.MonthlyPlanOfCcommerce;
import com.epoch.app.bcorder.sales_plan.salesplan.model.SalesPlan;
import com.epoch.app.bcorder.sales_plan.salesplanscitem.model.SalesPlanScItem;
import com.epoch.app.otsapplicationreportsdk.model.dto.CommPageQueryRequest;

import java.util.List;

/**
 * @author zhoubc
 * @description: TODO
 * @date 2021/11/23 21:45
 */
public interface SalesPlanDetailRepository {

    PageResult<List<MonthSalesPlanProgressReportSDO>> pageStatisticalMonthPlanProgressData(CommPageQueryRequest request);

    PageResult<List<OrgMonthPlanQuantitySDO>> pageStatisticalTaskCountByOrganiztion(CommPageQueryRequest request);

    PageResult<List<OrgMonthPlanQuantitySDO>> pageStatisticalReturnCountByOrganiztion(CommPageQueryRequest request);

    //List<OrgMonthPlanQuantitySDO> statisticalAdjustCountByOrganiztion(CommPageQueryRequest request);

    List<OrgMonthPlanQuantitySDO> queryAdjustCountByOrganiztion(CommPageQueryRequest request);

    PageResult<List<OrgMonthPlanQuantitySDO>> pageStatisticalNykMonthPlanConfirmCount(CommPageQueryRequest request);

    PageResult<List<OrgMonthPlanQuantitySDO>> pageStatisticalCommerceMonthPlanConfirmCount(CommPageQueryRequest request);

    PageResult<List<MonthlyPlanOfCcommerce>> pageQueryCommerceMonthPlanConfirmCount(CommPageQueryRequest request);

    PageResult<List<SalesPlanScItem>> batchQueryScItemPriceByOrganization(CommPageQueryRequest request);

    List<SalesPlan> getAdjustPlanList(CommPageQueryRequest request);

}
